Skip to content

fix(conductor): reject unsupported whole-branch review scopes - #236

Merged
foadshafighi merged 1 commit into
mainfrom
fix/conductor-review-scope
Nov 13, 2026
Merged

foadshafighi merged 1 commit into
mainfrom
fix/conductor-review-scope

Conversation

@foadshafighi

Copy link
Copy Markdown
Collaborator

Summary

Make /lp-conductor stop before a final whole-branch review that /lp-review cannot cover. /lp-review always compares against origin/main, and without it falls back to uncommitted files only, so a recorded review base elsewhere could produce a review that silently misses committed changes.

Changes

  • Before the final review, the Implementer protocol requires origin/main in the recorded Implementer repository and git merge-base origin/main HEAD equal to the recorded review_base. Otherwise it stops with an unsupported-scope explanation and never accepts the working-tree fallback as a whole-branch review.
  • The command warns at start when this precondition does not hold, and the How It Works entry states the restriction.
  • A focused test checks the precondition and the stop.

/lp-review itself is unchanged. An explicit base option for it is left to a separate change.

Test plan

  • python -m pytest -q from plugins/launchpad/scripts/ (pre-push): 2439 passed, 5 skipped.
  • pyright, Semgrep and the backlog check (pre-push).
  • Focused conductor, inventory and frontmatter tests: 34 passed.
  • Prettier check on the changed Markdown files and the repository structure check.

Require origin/main and a matching merge base before final reviews, and stop unsupported scopes without using the working-tree fallback. Document the restriction for users.
@github-actions

Copy link
Copy Markdown

Codex Automated Code Review

Code Review Summary

PR: Reject unsupported Conductor whole-branch review scopes by requiring origin/main and a merge base matching the recorded review base.

P0 - Critical Issues (Must Fix)

None found

P1 - High Priority Issues (Should Fix)

None found

P2 - Medium Priority Issues (Consider Fixing)

None found

P3 - Low Priority Issues (Optional)

None found

Positive Observations

  • The guard matches /lp-review’s actual scope and prevents accepting a working-tree fallback as whole-branch coverage.
  • Documentation explains the restriction and requires an early warning.
  • All four changed files reviewed. Four relevant text checks passed directly; pytest could not run because it is not installed.

Automated review by OpenAI Codex

@foadshafighi
foadshafighi merged commit 3a81371 into main Nov 13, 2026
10 checks passed
@foadshafighi
foadshafighi deleted the fix/conductor-review-scope branch November 13, 2026 09:16
foadshafighi added a commit that referenced this pull request Nov 13, 2026
Release /lp-conductor (#235, #236), the worktree commit-msg hook fix
(#226), the move to the FrameworkedApp organization (#234) and the
dependency and CI updates merged since v2.2.2.

- Bump both plugin manifests to 2.3.0.
- Move the unreleased changelog entries under v2.3.0 and add the
  plugin-internal changes.
- Add docs/releases/v2.3.0.md.
- Point the README version and release-notes link at v2.3.0.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant